博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JFinal项目搭建
阅读量:5305 次
发布时间:2019-06-14

本文共 3659 字,大约阅读时间需要 12 分钟。

1、Myeclipse中 新建 Dynamic Web Project  

 

 

 

 

导入jar包

2、配置web.xml

JFinalDemo
jfinal
com.jfinal.core.JFinalFilter
configClass
com.demo.common.CommonConfig
jfinal
/*
index.jsp

3、配置文件config.properties

jdbcUrl = jdbc:mysql://localhost:3306/jfinal?useUnicode=true&characterEncoding=utf-8user = rootpassword =devMode =true

4、配置jfinal启动文件

package com.demo.common;import com.demo.common.controller.BlogController;public class CommonConfig extends JFinalConfig {	@Override	public void configConstant(Constants me) {		loadPropertyFile("config.properties");		me.setDevMode(getPropertyToBoolean("devMode",false));		me.setViewType(ViewType.JSP);		me.setBaseViewPath("/WEB-INF/view");	}	@Override	public void configRoute(Routes me) {		me.add("/blog", BlogController.class);		me.add("/hello", HelloController.class);	}	@Override	public void configPlugin(Plugins me) {		C3p0Plugin c3p0Plugin = new C3p0Plugin(getProperty("jdbcUrl"), getProperty("user"), getProperty("password"));		me.add(c3p0Plugin);		ActiveRecordPlugin arp = new ActiveRecordPlugin(c3p0Plugin);		me.add(arp);		arp.addMapping("blog",Blog.class);	}	@Override	public void configInterceptor(Interceptors me) {		// TODO Auto-generated method stub	}	@Override	public void configHandler(Handlers me) {		// TODO Auto-generated method stub	}	/**	 * @param args	 */	public static void main(String[] args) {		// TODO Auto-generated method stub		JFinal.start("WebRoot", 81, "/", 5);	}}

5、控制器

package com.demo.common.controller;import java.util.Date;public class BlogController extends Controller {	public void index(){		setAttr("blogs", Blog.me.find("select * from blog"));		render("index.jsp");	}	public void add(){		String dosubmit = getPara("dosbumit");		if(dosubmit==null || dosubmit.length()<=0){			render("add.jsp");		}else{			Blog blog = getModel(Blog.class,"blog");			blog.set("time", new Date());			blog.save();			index();		}	}	public void del(){		Integer id = getParaToInt(0);		if(id==null || id<=0){			renderText("数据异常");			return;		}		Boolean flag = Blog.me.deleteById(id);		if(!flag){			renderText("数据已删除");			return;		}		index();	}	public void update(){		String dosubmit = getPara("dosbumit");		if(dosubmit==null || dosubmit.length()<=0){			Integer id = getParaToInt(0);			if(id==null || id<=0){				renderText("数据异常");				return;			}			setAttr("blog", Blog.me.findById(id));			render("update.jsp");		}else{			Blog blog = getModel(Blog.class,"blog");			blog.update();			index();		}	}}

6、模型

package com.demo.common.model;import com.jfinal.plugin.activerecord.Model;public class Blog extends Model
{ public final static Blog me = new Blog();}

7、视图

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>              博客列表    
添加博客
ID 标题 内容 时间 操作
${b.id } ${b.title } ${b.content } ${b.time } 删除 | 编辑

代码:

转载于:https://www.cnblogs.com/mracale/p/7902655.html

你可能感兴趣的文章
TC SRM 593 DIV1 250
查看>>
SRM 628 DIV2
查看>>
2018-2019-2 20165314『网络对抗技术』Exp5:MSF基础应用
查看>>
Python-S9-Day127-Scrapy爬虫框架2
查看>>
SecureCRT的使用方法和技巧(详细使用教程)
查看>>
右侧导航栏(动态添加数据到list)
查看>>
81、iOS本地推送与远程推送详解
查看>>
虚拟DOM
查看>>
自建数据源(RSO2)、及数据源增强
查看>>
关于View控件中的Context选择
查看>>
2018icpc徐州OnlineA Hard to prepare
查看>>
Spark的启动进程详解
查看>>
使用命令创建数据库和表
查看>>
机器视觉:SSD Single Shot MultiBox Detector
查看>>
201521123044 《Java程序设计》第1周学习总结
查看>>
MIT Scheme 的基本使用
查看>>
程序员的“机械同感”
查看>>
在16aspx.com上下了一个简单商品房销售系统源码,怎么修改它的默认登录名和密码...
查看>>
c++回调函数
查看>>
linux下Rtree的安装
查看>>